Techniques for virtualizing storage devices include using virtual logical volumes (hereinafter also simply referred to as thin provisioning volumes) to which storage areas are dynamically allocated when write requests are issued.
When typical logical volumes (hereinafter also referred to as real logical volumes) are created, all the storage areas with the defined capacities are allocated to physical disks or real storages in, for example, array groups in advance.
In contrast, when thin provisioning volumes are created, only the capacities are defined, and no storage areas are allocated to real storages. That is, it is not until requests for writing in the thin provisioning volumes are issued that storage areas of the required size are allocated to the real storages.
The thin provisioning volumes do not require all the storage areas with the defined capacities to be prepared in advance, and areas with a size suitable for practical use are dynamically ensured when write requests are issued. Therefore, use of the virtual logical volumes allows installation of physical disks with essential capacities when storage devices are introduced and addition of physical disks when the capacities become inadequate in accordance with the subsequent usage. In this manner, costs for introduction and management of the storage devices can be reduced by increasing the use efficiency of the disks.
A storage device adopting thin provisioning volumes includes at least one control unit (CM: centralized module) that accesses real storage areas in real storages by reading accesses made to virtual storage areas of the thin provisioning volumes as the accesses to the real storage areas.
The storage device can include a plurality of CMs, and each CM is connected to real storages in units of RAID groups. Herein, each CM connected to the real storages is referred to as a CM in charge of real storages. Moreover, each CM retaining mapping information indicating correspondences between the thin provisioning volumes and the real storages in the cache memory is referred to as a CM in charge of the thin provisioning volumes since the CM accesses the real storages by reading accesses made to the thin provisioning volumes as those to the real storages.
The storage areas of the real storages corresponding to the storage areas of the thin provisioning volumes can be allocated to any real volumes assigned to the plurality of CMs. That is, the storage areas of the real storages corresponding to those of the thin provisioning volumes can be distributed over the plurality of real storages.
Therefore, when a host computer accesses data stored in a thin provisioning volume, the storage device first determines a real storage by referring to the mapping information of the CM in charge of the target thin provisioning volume. Subsequently, the storage device performs accesses such as read/write processes through communication between the CM in charge of the thin provisioning volume and the CM in charge of the real storage.
That is, processing time of data access to the thin provisioning volumes is longer than the processing time of data access to the real logical volumes due to the communication between the CMs.
Moreover, although the thin provisioning volumes have advantages as described above when the capacity in use of the thin provisioning volumes is lower than the defined capacity, the advantages disappear when the capacity in use becomes substantially the same as the defined capacity since real storages with a storage capacity equivalent to the defined capacity are required.
Therefore, the real logical volumes, which have better data access performance, are more appropriate than the thin provisioning volumes at the stage where the capacity in use of the thin provisioning volumes becomes the same as the defined capacity.